[INFO] fetching crate codex-git 0.1.1...
[INFO] testing codex-git-0.1.1 against try#0abe69e6c16114311cc2700e972492e64d69c28f for pr-154065
[INFO] extracting crate codex-git 0.1.1 into /workspace/builds/worker-6-tc2/source
[INFO] started tweaking crates.io crate codex-git 0.1.1
[INFO] finished tweaking crates.io crate codex-git 0.1.1
[INFO] tweaked toml for crates.io crate codex-git 0.1.1 written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate codex-git 0.1.1 on toolchain 0abe69e6c16114311cc2700e972492e64d69c28f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 171 packages to latest compatible versions
[INFO] [stderr]       Adding env_logger v0.9.3 (available: v0.11.10)
[INFO] [stderr]       Adding generic-array v0.14.7 (available: v0.14.9)
[INFO] [stderr]       Adding git2 v0.13.25 (available: v0.20.4)
[INFO] [stderr]       Adding git2_credentials v0.7.3 (available: v0.15.0)
[INFO] [stderr]       Adding ron v0.7.1 (available: v0.12.0)
[INFO] [stderr]       Adding simple_logger v1.16.0 (available: v5.2.0)
[INFO] [stderr]       Adding thiserror v1.0.69 (available: v2.0.18)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fb4c1ac3fa8f716a4f43b72fc0b1c54555b682c848011fbaf35a0349a363a491
[INFO] running `Command { std: "docker" "start" "-a" "fb4c1ac3fa8f716a4f43b72fc0b1c54555b682c848011fbaf35a0349a363a491", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fb4c1ac3fa8f716a4f43b72fc0b1c54555b682c848011fbaf35a0349a363a491", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fb4c1ac3fa8f716a4f43b72fc0b1c54555b682c848011fbaf35a0349a363a491", kill_on_drop: false }`
[INFO] [stdout] fb4c1ac3fa8f716a4f43b72fc0b1c54555b682c848011fbaf35a0349a363a491
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 38d65b645594aac4a6fcb9ec526f42903b4e95d1ea056899deee202152a5983f
[INFO] running `Command { std: "docker" "start" "-a" "38d65b645594aac4a6fcb9ec526f42903b4e95d1ea056899deee202152a5983f", kill_on_drop: false }`
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling num-conv v0.2.1
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling terminal_size v0.1.17
[INFO] [stderr]    Compiling cc v1.2.58
[INFO] [stderr]    Compiling proc-macro-error-attr2 v2.0.0
[INFO] [stderr]    Compiling dirs-sys v0.3.7
[INFO] [stderr]    Compiling colored v1.9.4
[INFO] [stderr]    Compiling pest_derive v2.8.6
[INFO] [stderr]    Compiling humantime v2.3.0
[INFO] [stderr]    Compiling base64 v0.13.1
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling test-env-log v0.2.8
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling time-macros v0.2.27
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling dirs v3.0.2
[INFO] [stderr]    Compiling ron v0.7.1
[INFO] [stderr]    Compiling proc-macro-error2 v2.0.1
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling console v0.14.1
[INFO] [stderr]    Compiling env_logger v0.9.3
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling getset v0.1.6
[INFO] [stderr]    Compiling dialoguer v0.8.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling time v0.3.47
[INFO] [stderr]    Compiling libz-sys v1.1.25
[INFO] [stderr]    Compiling openssl-sys v0.9.112
[INFO] [stderr]    Compiling libssh2-sys v0.2.23
[INFO] [stderr]    Compiling libgit2-sys v0.12.26+1.3.0
[INFO] [stderr]    Compiling simple_logger v1.16.0
[INFO] [stderr]    Compiling git2 v0.13.25
[INFO] [stderr]    Compiling git2_credentials v0.7.3
[INFO] [stderr]    Compiling codex-git v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around closure body
[INFO] [stdout]    --> src/lib.rs:479:46
[INFO] [stdout]     |
[INFO] [stdout] 479 |         Ok(self.last_commit()?.ok_or_else(|| (anyhow!("no commit")))?)
[INFO] [stdout]     |                                              ^                    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 479 -         Ok(self.last_commit()?.ok_or_else(|| (anyhow!("no commit")))?)
[INFO] [stdout] 479 +         Ok(self.last_commit()?.ok_or_else(|| anyhow!("no commit"))?)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:157:22
[INFO] [stdout]     |
[INFO] [stdout] 157 |     fn fetch_options(&self) -> Result<FetchOptions> {
[INFO] [stdout]     |                      ^^^^^            ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 157 |     fn fetch_options(&self) -> Result<FetchOptions<'_>> {
[INFO] [stdout]     |                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:163:18
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn callbacks(&self) -> Result<RemoteCallbacks> {
[INFO] [stdout]     |                  ^^^^^            ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn callbacks(&self) -> Result<RemoteCallbacks<'_>> {
[INFO] [stdout]     |                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:482:20
[INFO] [stdout]     |
[INFO] [stdout] 482 |     fn last_commit(&self) -> Result<Option<Commit>> {
[INFO] [stdout]     |                    ^^^^^                   ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 482 |     fn last_commit(&self) -> Result<Option<Commit<'_>>> {
[INFO] [stdout]     |                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 22.09s
[INFO] running `Command { std: "docker" "inspect" "38d65b645594aac4a6fcb9ec526f42903b4e95d1ea056899deee202152a5983f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "38d65b645594aac4a6fcb9ec526f42903b4e95d1ea056899deee202152a5983f", kill_on_drop: false }`
[INFO] [stdout] 38d65b645594aac4a6fcb9ec526f42903b4e95d1ea056899deee202152a5983f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 066f498d8fc4d042160b1da072321d7538805e1dbc229f35b46855049c922794
[INFO] running `Command { std: "docker" "start" "-a" "066f498d8fc4d042160b1da072321d7538805e1dbc229f35b46855049c922794", kill_on_drop: false }`
[INFO] [stdout] warning: unnecessary parentheses around closure body
[INFO] [stdout]    --> src/lib.rs:479:46
[INFO] [stdout]     |
[INFO] [stdout] 479 |         Ok(self.last_commit()?.ok_or_else(|| (anyhow!("no commit")))?)
[INFO] [stdout]     |                                              ^                    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 479 -         Ok(self.last_commit()?.ok_or_else(|| (anyhow!("no commit")))?)
[INFO] [stdout] 479 +         Ok(self.last_commit()?.ok_or_else(|| anyhow!("no commit"))?)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:157:22
[INFO] [stdout]     |
[INFO] [stdout] 157 |     fn fetch_options(&self) -> Result<FetchOptions> {
[INFO] [stdout]     |                      ^^^^^            ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 157 |     fn fetch_options(&self) -> Result<FetchOptions<'_>> {
[INFO] [stdout]     |                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:163:18
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn callbacks(&self) -> Result<RemoteCallbacks> {
[INFO] [stdout]     |                  ^^^^^            ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn callbacks(&self) -> Result<RemoteCallbacks<'_>> {
[INFO] [stdout]     |                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:482:20
[INFO] [stdout]     |
[INFO] [stdout] 482 |     fn last_commit(&self) -> Result<Option<Commit>> {
[INFO] [stdout]     |                    ^^^^^                   ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 482 |     fn last_commit(&self) -> Result<Option<Commit<'_>>> {
[INFO] [stdout]     |                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling codex-git v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around closure body
[INFO] [stdout]    --> src/lib.rs:479:46
[INFO] [stdout]     |
[INFO] [stdout] 479 |         Ok(self.last_commit()?.ok_or_else(|| (anyhow!("no commit")))?)
[INFO] [stdout]     |                                              ^                    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 479 -         Ok(self.last_commit()?.ok_or_else(|| (anyhow!("no commit")))?)
[INFO] [stdout] 479 +         Ok(self.last_commit()?.ok_or_else(|| anyhow!("no commit"))?)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:157:22
[INFO] [stdout]     |
[INFO] [stdout] 157 |     fn fetch_options(&self) -> Result<FetchOptions> {
[INFO] [stdout]     |                      ^^^^^            ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 157 |     fn fetch_options(&self) -> Result<FetchOptions<'_>> {
[INFO] [stdout]     |                                                   ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:163:18
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn callbacks(&self) -> Result<RemoteCallbacks> {
[INFO] [stdout]     |                  ^^^^^            ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 163 |     fn callbacks(&self) -> Result<RemoteCallbacks<'_>> {
[INFO] [stdout]     |                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/lib.rs:482:20
[INFO] [stdout]     |
[INFO] [stdout] 482 |     fn last_commit(&self) -> Result<Option<Commit>> {
[INFO] [stdout]     |                    ^^^^^                   ^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 482 |     fn last_commit(&self) -> Result<Option<Commit<'_>>> {
[INFO] [stdout]     |                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2.10s
[INFO] running `Command { std: "docker" "inspect" "066f498d8fc4d042160b1da072321d7538805e1dbc229f35b46855049c922794", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "066f498d8fc4d042160b1da072321d7538805e1dbc229f35b46855049c922794", kill_on_drop: false }`
[INFO] [stdout] 066f498d8fc4d042160b1da072321d7538805e1dbc229f35b46855049c922794
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+0abe69e6c16114311cc2700e972492e64d69c28f" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 3654bd1b6089b6e4b78b4bc8637575df022caf1a4a98374d12f831876ecd2262
[INFO] running `Command { std: "docker" "start" "-a" "3654bd1b6089b6e4b78b4bc8637575df022caf1a4a98374d12f831876ecd2262", kill_on_drop: false }`
[INFO] [stderr] warning: unnecessary parentheses around closure body
[INFO] [stderr]    --> src/lib.rs:479:46
[INFO] [stderr]     |
[INFO] [stderr] 479 |         Ok(self.last_commit()?.ok_or_else(|| (anyhow!("no commit")))?)
[INFO] [stderr]     |                                              ^                    ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 479 -         Ok(self.last_commit()?.ok_or_else(|| (anyhow!("no commit")))?)
[INFO] [stderr] 479 +         Ok(self.last_commit()?.ok_or_else(|| anyhow!("no commit"))?)
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/lib.rs:157:22
[INFO] [stderr]     |
[INFO] [stderr] 157 |     fn fetch_options(&self) -> Result<FetchOptions> {
[INFO] [stderr]     |                      ^^^^^            ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                      |
[INFO] [stderr]     |                      the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 157 |     fn fetch_options(&self) -> Result<FetchOptions<'_>> {
[INFO] [stderr]     |                                                   ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/lib.rs:163:18
[INFO] [stderr]     |
[INFO] [stderr] 163 |     fn callbacks(&self) -> Result<RemoteCallbacks> {
[INFO] [stderr]     |                  ^^^^^            ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                  |
[INFO] [stderr]     |                  the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 163 |     fn callbacks(&self) -> Result<RemoteCallbacks<'_>> {
[INFO] [stderr]     |                                                  ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/lib.rs:482:20
[INFO] [stderr]     |
[INFO] [stderr] 482 |     fn last_commit(&self) -> Result<Option<Commit>> {
[INFO] [stderr]     |                    ^^^^^                   ^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                    |
[INFO] [stderr]     |                    the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 482 |     fn last_commit(&self) -> Result<Option<Commit<'_>>> {
[INFO] [stderr]     |                                                  ++++
[INFO] [stderr] 
[INFO] [stderr] warning: `codex-git` (lib) generated 4 warnings (run `cargo fix --lib -p codex-git` to apply 4 suggestions)
[INFO] [stderr] warning: `codex-git` (lib test) generated 4 warnings (4 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.28s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/codex_git-b5b6976db87625ba)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test tests::basic ... FAILED
[INFO] [stdout] test tests::multirepo ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- tests::basic stdout ----
[INFO] [stdout] 2026-03-28 05:04:27,205 TRACE [codex_git::tests] [40;36mb: starting basic test[0m (src/tests.rs:25)
[INFO] [stdout] 2026-03-28 05:04:27,209 TRACE [codex_git::tests] [40;36mtest dir path is /tmp/.tmpLDGOut[0m (src/tests.rs:140)
[INFO] [stdout] 2026-03-28 05:04:27,209 TRACE [codex_git::tests] [40;36mcurrent dir is "/opt/rustwide/workdir", remote URL is file:///tmp/codex-test/remote[0m (src/tests.rs:146)
[INFO] [stdout] 2026-03-28 05:04:27,209 TRACE [codex_git] [46;30mrepo does not exist "/tmp/.tmpLDGOut/remote"[0m (src/lib.rs:123)
[INFO] [stdout] 2026-03-28 05:04:27,209 TRACE [codex_git::tests] [40;36mb: test data is 'now is 2026-03-28T05:04:27.209358011+00:00 from prog'[0m (src/tests.rs:30)
[INFO] [stdout] 2026-03-28 05:04:27,209 TRACE [codex_git::tests] [40;36m--- creating repo, writing to test.txt ---[0m (src/tests.rs:32)
[INFO] [stdout] 2026-03-28 05:04:27,209 TRACE [codex_git::tests] [40;36mb: cloning repo[0m (src/tests.rs:33)
[INFO] [stdout] 2026-03-28 05:04:27,209 TRACE [codex_git] [46;30mcloning repo "file:///tmp/codex-test/remote" to "/tmp/.tmpLDGOut"[0m (src/lib.rs:140)
[INFO] [stdout] Error: Git { source: Error { code: -1, klass: 2, message: "failed to resolve path '/tmp/codex-test/remote': No such file or directory" } }
[INFO] [stdout] 
[INFO] [stdout] ---- tests::multirepo stdout ----
[INFO] [stdout] 2026-03-28 05:04:27,292 TRACE [codex_git::tests] [40;36mmr: starting multirepo test[0m (src/tests.rs:69)
[INFO] [stdout] 2026-03-28 05:04:27,292 TRACE [codex_git::tests] [40;36mtest dir path is /tmp/.tmpTqqkWn[0m (src/tests.rs:140)
[INFO] [stdout] 2026-03-28 05:04:27,292 TRACE [codex_git::tests] [40;36mcurrent dir is "/opt/rustwide/workdir", remote URL is file:///tmp/codex-test/remote[0m (src/tests.rs:146)
[INFO] [stdout] 2026-03-28 05:04:27,292 TRACE [codex_git] [46;30mrepo does not exist "/tmp/.tmpTqqkWn/remote"[0m (src/lib.rs:123)
[INFO] [stdout] 2026-03-28 05:04:27,292 TRACE [codex_git::tests] [40;36mmr: test file name is /tmp/.tmpTqqkWn/remote/test2.txt[0m (src/tests.rs:74)
[INFO] [stdout] 2026-03-28 05:04:27,292 TRACE [codex_git::tests] [40;36mmr: old test data is 'mr/old is 2026-03-28T05:04:27.292825869+00:00 from prog'[0m (src/tests.rs:76)
[INFO] [stdout] 2026-03-28 05:04:27,292 TRACE [codex_git::tests] [40;36mmr: new test data is 'mr/new is 2026-03-28T05:04:27.292940400+00:00 from prog'[0m (src/tests.rs:78)
[INFO] [stdout] 2026-03-28 05:04:27,292 TRACE [codex_git::tests] [40;36m--- cloning first repo, writing old data to test2.txt ---[0m (src/tests.rs:81)
[INFO] [stdout] 2026-03-28 05:04:27,292 TRACE [codex_git::tests] [40;36mmr: cloning repo 1[0m (src/tests.rs:85)
[INFO] [stdout] 2026-03-28 05:04:27,292 TRACE [codex_git] [46;30mcloning repo "file:///tmp/codex-test/remote" to "/tmp/.tmpTqqkWn"[0m (src/lib.rs:140)
[INFO] [stdout] Error: Git { source: Error { code: -1, klass: 2, message: "failed to resolve path '/tmp/codex-test/remote': No such file or directory" } }
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     tests::basic
[INFO] [stdout]     tests::multirepo
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 2 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "3654bd1b6089b6e4b78b4bc8637575df022caf1a4a98374d12f831876ecd2262", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3654bd1b6089b6e4b78b4bc8637575df022caf1a4a98374d12f831876ecd2262", kill_on_drop: false }`
[INFO] [stdout] 3654bd1b6089b6e4b78b4bc8637575df022caf1a4a98374d12f831876ecd2262
